home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / a_man / cat1 / xfs_check.z / xfs_check
Encoding:
Text File  |  2002-10-03  |  8.7 KB  |  199 lines

  1.  
  2.  
  3.  
  4. xxxxffffssss____cccchhhheeeecccckkkk((((1111MMMM))))                                                    xxxxffffssss____cccchhhheeeecccckkkk((((1111MMMM))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      xfs_check, xfs_check64 - check XFS filesystem consistency
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      xxxxffffssss____cccchhhheeeecccckkkk [ ----iiii ino ] ... [ ----bbbb bno ] ... [ ----ssss ] [ ----vvvv ] xfs_special
  13.  
  14.      xxxxffffssss____cccchhhheeeecccckkkk ----ffff [ ----iiii ino ] ... [ ----bbbb bno ] ... [ ----ssss ] [ ----vvvv ] file
  15.  
  16.      xxxxffffssss____cccchhhheeeecccckkkk66664444 [ ----iiii ino ] ... [ ----bbbb bno ] ... [ ----ssss ] [ ----vvvv ] xfs_special
  17.  
  18.      xxxxffffssss____cccchhhheeeecccckkkk66664444 ----ffff [ ----iiii ino ] ... [ ----bbbb bno ] ... [ ----ssss ] [ ----vvvv ] file
  19.  
  20. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  21.      _x_f_s__c_h_e_c_k checks whether an XFS filesystem is consistent.  It is normally
  22.      run only when there is reason to believe that the filesystem has a
  23.      consistency problem.  The filesystem to be checked is specified by the
  24.      _x_f_s__s_p_e_c_i_a_l argument, which should be the disk or volume device for the
  25.      filesystem.  Filesystems stored in files can also be checked, using the
  26.      ----ffff flag.  The filesystem should normally be unmounted or read-only during
  27.      the execution of _x_f_s__c_h_e_c_k.  Otherwise, spurious problems are reported.
  28.  
  29.      _x_f_s__c_h_e_c_k_6_4 is a 64-bit version of _x_f_s__c_h_e_c_k which is not as susceptible
  30.      to running out of memory.  It is available only on 64-bit capable
  31.      systems.
  32.  
  33.      The options to _x_f_s__c_h_e_c_k are:
  34.  
  35.      ----ffff       Specifies that the special device is actually a file (see the
  36.               _m_k_f_s__x_f_s ----dddd _f_i_l_e option).  This might happen if an image copy of
  37.               a filesystem has been made into an ordinary file.
  38.  
  39.      ----ssss       Specifies that only serious errors should be reported.  Serious
  40.               errors are those that make it impossible to find major data
  41.               structures in the filesystem.  This option can be used to cut
  42.               down the amount of output when there is a serious problem, when
  43.               the output might make it difficult to see what the real problem
  44.               is.
  45.  
  46.      ----vvvv       Specifies verbose output; it is impossibly long for a
  47.               reasonably-sized filesystem.  This option is intended for
  48.               internal use only.
  49.  
  50.      ----iiii _i_n_o   Specifies verbose behavior for a specific inode.  For instance,
  51.               it can be used to locate all the blocks associated with a given
  52.               inode.
  53.  
  54.      ----bbbb _b_n_o   Specifies verbose behavior for a specific filesystem block.  For
  55.               instance, it can be used to determine what a specific block is
  56.               used for.  The block number is a "file system block number".
  57.               Conversion between disk addresses (i.e. addresses reported by
  58.               _x_f_s__b_m_a_p) and file system blocks may be accomplished using
  59.               _x_f_s__d_b's ccccoooonnnnvvvveeeerrrrtttt command.
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. xxxxffffssss____cccchhhheeeecccckkkk((((1111MMMM))))                                                    xxxxffffssss____cccchhhheeeecccckkkk((((1111MMMM))))
  71.  
  72.  
  73.  
  74.      Any non-verbose output from _x_f_s__c_h_e_c_k means that the filesystem has an
  75.      inconsistency.  The filesystem can be repaired using either
  76.      _x_f_s__r_e_p_a_i_r(_1_M) to fix the filesystem in place, or by using _x_f_s_d_u_m_p(1M)
  77.      and _m_k_f_s__x_f_s(1M) to dump the filesystem, make a new filesystem, then use
  78.      _x_f_s_r_e_s_t_o_r_e(1M) to restore the data onto the new filesystem.  Note that
  79.      xfsdump may fail on a corrupt filesystem.  However, if the filesystem is
  80.      mountable, xfsdump can be used to try and save important data before
  81.      repairing the filesystem with xfs_repair.  If the filesystem is not
  82.      mountable though, xfs_repair is the only viable option.
  83.  
  84. DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  85.      Under one circumstance, _x_f_s__c_h_e_c_k unfortunately might dump core rather
  86.      than produce useful output.  If the filesystem is completely corrupt, a
  87.      core dump might be produced instead of the message
  88.  
  89.           _x_x_x is not a valid filesystem
  90.  
  91.  
  92.      If the filesystem is very large (has many files) then _x_f_s__c_h_e_c_k might run
  93.      out of memory.  In this case the message
  94.  
  95.           out of memory
  96.  
  97.      is printed, and if the system running xfs_check supports execution of
  98.      64-bit binaries, then a suggestion to run _x_f_s__c_h_e_c_k_6_4 is printed as well.
  99.  
  100.      The following is a description of the most likely problems and the
  101.      associated messages.  Most of the diagnostics produced are only
  102.      meaningful with an understanding of the structure of the filesystem.
  103.  
  104.      agf_freeblks _n, counted _m in ag _a
  105.           The freeblocks count in the allocation group header for allocation
  106.           group _a doesn't match the number of blocks counted free.
  107.  
  108.      agf_longest _n, counted _m in ag _a
  109.           The longest free extent in the allocation group header for
  110.           allocation group _a doesn't match the longest free extent found in
  111.           the allocation group.
  112.  
  113.      agi_count _n, counted _m in ag _a
  114.           The allocated inode count in the allocation group header for
  115.           allocation group _a doesn't match the number of inodes counted in the
  116.           allocation group.
  117.  
  118.      agi_freecount _n, counted _m in ag _a
  119.           The free inode count in the allocation group header for allocation
  120.           group _a doesn't match the number of inodes counted free in the
  121.           allocation group.
  122.  
  123.      block _a/_b expected inum 0 got _i
  124.           The block number is specified as a pair (allocation group number,
  125.           block in the allocation group).  The block is used multiple times
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. xxxxffffssss____cccchhhheeeecccckkkk((((1111MMMM))))                                                    xxxxffffssss____cccchhhheeeecccckkkk((((1111MMMM))))
  137.  
  138.  
  139.  
  140.           (shared), between multiple inodes.  This message usually follows a
  141.           message of the next type.
  142.  
  143.      block _a/_b expected type unknown got _y
  144.           The block is used multiple times (shared).
  145.  
  146.      block _a/_b type unknown not expected
  147.           The block is unaccounted for (not in the freelist and not in use).
  148.  
  149.      link count mismatch for inode _n_n_n (name _x_x_x), nlink _m, counted _n
  150.           The inode has a bad link count (number of references in
  151.           directories).
  152.  
  153.      rtblock _b expected inum 0 got _i
  154.           The block is used multiple times (shared), between multiple inodes.
  155.           This message usually follows a message of the next type.
  156.  
  157.      rtblock _b expected type unknown got _y
  158.           The real-time block is used multiple times (shared).
  159.  
  160.      rtblock _b type unknown not expected
  161.           The real-time block is unaccounted for (not in the freelist and not
  162.           in use).
  163.  
  164.      sb_fdblocks _n, counted _m
  165.           The number of free data blocks recorded in the superblock doesn't
  166.           match the number counted free in the filesystem.
  167.  
  168.      sb_frextents _n, counted _m
  169.           The number of free real-time extents recorded in the superblock
  170.           doesn't match the number counted free in the filesystem.
  171.  
  172.      sb_icount _n, counted _m
  173.           The number of allocated inodes recorded in the superblock doesn't
  174.           match the number allocated in the filesystem.
  175.  
  176.      sb_ifree _n, counted _m
  177.           The number of free inodes recorded in the superblock doesn't match
  178.           the number free in the filesystem.
  179.  
  180. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  181.      mkfs_xfs(1M), xfsdump(1M), xfsrestore(1M), xfs_ncheck(1M),
  182.      xfs_repair(1M), xfs(4).
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.